<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        /**
         * Array.from('伪数组')
         * Array.of() 创建数组 ， 解决了let arr = new Array(7);的问题
         * arr.at(索引) 取数组值，扩展了负数，负数从后往前，-1开始
         * arr.fill() 填充数组 
         *      1个参数，填充整个数组； 
         *      三个参数： 参数1：填充的值，参数2：起始位置，参数3：结束位置 （包前不包后）
         * arr.includes(某项值) : 是否包含某项值，包含返回true，否则false
         * arr.flat(数值) 数组的扁平化
         * 
         * find(cb)  只找到复合条件的一项
         * findIndex(cb)   返回找到的第一个项的索引
          */
         function fun() {
             console.log(Array.from(arguments));
         }
         fun(1, 2);

        var arr = Array.of(7);
        var arr1 = Array.of(7, 8, 'hhh');
        console.log(arr,arr1);

        console.log(arr1.at(-2));
 
        // console.log(arr1.fill(6));
        console.log(arr1.fill('王俊凯',1,2)); 
        console.log('原数组',arr1);

        console.log(arr1.includes('hjkjljkljlk'));
        console.log(arr1.includes('王俊凯'));

        // console.log(arr1.find('王俊凯'));
        
        var newarr = [1, 2, [3, 4, 5, [2, 7]], 2, 4];
        console.log(newarr);
        console.log(newarr.flat());//合并一个数组
        console.log(newarr.flat(1));
        console.log(newarr.flat(2));

        
        var val1 = newarr.find(item => item > 2);
        console.log(val1); //4 返回的一维数组最后一项，只能找到最外层的数组，二维三维找不到

        var val2 = newarr.findIndex(item => item === 4);
        console.log(val2); //4

    </script>
</body>
</html>